package net.jkdmanager.common.services.plugins;

import java.util.List;

import net.jkdmanager.common.api.model.plugins.PluginsDescriptor;
import net.jkdmanager.common.api.plugins.PluginI;

public interface PluginRegistryService {

	PluginsDescriptor getPluginsDescriptor();
	
	List<PluginI> getAllPlugins();
	
	<T extends PluginI> List<T> getAllPlugins(Class<T> clazz);
	
	<T extends PluginI> T getPlugin(Class<T> clazz, String pluginKey);
	
}
